/*
 * Powered By XY
 * Since 2020
 */

package com.xy.biz.mes.dao;

import java.util.Collection;
import java.util.List;

import com.xy.biz.mes.domain.po.ManufactureTaskPO;
import com.xy.biz.mes.domain.query.ManufactureTaskQuery;

/**
 *
 *
 * @author zsp
 * @date 2022-1-6
 */
public interface ManufactureTaskDao {

    /**
     * 保存
     *
     * @param manufactureTaskPO
     */
    int saveManufactureTask(ManufactureTaskPO manufactureTaskPO);

    /**
     * 保存多个
     *
     * @param collection
     */
    int saveAllManufactureTask(Collection<ManufactureTaskPO> collection);

    /**
     * 更新
     *
     * @param manufactureTaskPO
     */
    int updateManufactureTask(ManufactureTaskPO manufactureTaskPO);

    int updateAllManufactureTask(Collection<ManufactureTaskPO> collection);

    /**
     * 删除
     *
     * @param manufactureTaskId
     */
    int deleteManufactureTask(Long manufactureTaskId);

    int deleteManufactureTaskRecord(Collection<Long> collection);

    /**
     * 查找一个
     *
     * @param manufactureTaskId
     * @return
     */
    ManufactureTaskPO getManufactureTask(Long manufactureTaskId);

    /**
     * 查找多条
     *
     * @param collection
     * @return
     */
    List<ManufactureTaskPO> listManufactureTaskById(Collection<Long> collection);

    /**
     * 条件查找多条
     *
     * @param query 查找条件
     * @return
     */
    List<ManufactureTaskPO> listManufactureTask(ManufactureTaskQuery query);

    /**
     * 条件统计个数
     *
     * @param query 查找条件
     * @return
     */
    int countManufactureTask(ManufactureTaskQuery query);

}
